Justin Burkett [Sat, 24 Feb 2018 21:29:33 +0000 (16:29 -0500)]
Fix descriptions of keys involving meta when showing keymaps
Justin Burkett [Fri, 23 Feb 2018 18:48:51 +0000 (13:48 -0500)]
Autoload the show keymap functions
Justin Burkett [Fri, 23 Feb 2018 18:34:11 +0000 (13:34 -0500)]
Add which-key-show-full-keymap
Command to show all bindings in a keymap recursively.
Add test for new which-key--get-keymap-bindings functionality.
Justin Burkett [Fri, 23 Feb 2018 18:32:19 +0000 (13:32 -0500)]
Extract which-key--ignore-keys-regexp and which-key-show-keymap-1
Justin Burkett [Wed, 31 Jan 2018 14:06:19 +0000 (09:06 -0500)]
Improve which-key--format-and-replace
Do a better job with nil descriptions
Justin Burkett [Wed, 31 Jan 2018 14:02:55 +0000 (09:02 -0500)]
Handle null description in which-key--propertize-description
Fixes #186
Justin Burkett [Wed, 31 Jan 2018 13:58:15 +0000 (08:58 -0500)]
Use safe version of propertize
Should fix #186
Justin Burkett [Wed, 31 Jan 2018 13:04:24 +0000 (08:04 -0500)]
Fix description truncation when showing docstrings
Justin Burkett [Wed, 31 Jan 2018 12:45:27 +0000 (07:45 -0500)]
Improve which-key-show-docstrings option
Add setting docstring-only to omit command names. Add which-key-docstring-face.
See #185
Justin Burkett [Wed, 31 Jan 2018 01:29:51 +0000 (20:29 -0500)]
Add option to show docstrings in which-key buffer
Implements a simple version of the suggestion in #185
Justin Burkett [Tue, 9 Jan 2018 03:30:21 +0000 (22:30 -0500)]
Remove debugging message
Justin Burkett [Tue, 9 Jan 2018 03:26:05 +0000 (22:26 -0500)]
Implement #182
Allow single digit arg to be set after C-h
Justin Burkett [Tue, 9 Jan 2018 01:19:10 +0000 (20:19 -0500)]
Version 3.1.0
Justin Burkett [Mon, 18 Dec 2017 03:16:24 +0000 (22:16 -0500)]
Fix and improve define-key based replacements
Check for equality of definition as well as the key sequence. Unless it's a
prefix binding, in which case only check the key sequence.
Make sure we apply kbd when looking up pseudo bindings.
Move the logic into which-key--get-pseudo-binding.
Justin Burkett [Sun, 17 Dec 2017 18:17:13 +0000 (13:17 -0500)]
Merge pull request #183 from tarsiiformes/silencio
Define which-key--current-key-list before using it
Jonas Bernoulli [Sun, 17 Dec 2017 17:57:03 +0000 (18:57 +0100)]
Define which-key--current-key-list before using it
Actually move the definition of the caller which-key--pseudo-key
instead.
Justin Burkett [Sun, 17 Dec 2017 03:11:59 +0000 (22:11 -0500)]
Simplify implementation of define-key based replacements
When a description is provided through define-key using a definition
like ("description" . def) place a additional binding in the map to a "pseudo
key" making it easy for which-key to find these descriptions on the fly and at
the right time (i.e., when the binding is active).
which-key-enable-extended-define-key must be enabled for this to have an
effect.
Justin Burkett [Fri, 15 Dec 2017 19:18:30 +0000 (14:18 -0500)]
Improve which-key--process-define-key-args
Specify Prefix Command as an explicit match string to cut down on false
positives.
Justin Burkett [Thu, 14 Dec 2017 02:12:50 +0000 (21:12 -0500)]
Announce which-key-enable-extended-define-key in README
Justin Burkett [Thu, 14 Dec 2017 01:52:09 +0000 (20:52 -0500)]
Demote errors in which-key--process-define-key-args
Justin Burkett [Wed, 13 Dec 2017 18:06:55 +0000 (13:06 -0500)]
Fix .travis.yml
Didn't install cask
Justin Burkett [Wed, 13 Dec 2017 18:02:51 +0000 (13:02 -0500)]
Fix travis build
Add support for 25.3. Remove for 24.3
Justin Burkett [Wed, 13 Dec 2017 16:10:05 +0000 (11:10 -0500)]
Allow null DEF in which-key--process-define-key-args
This is useful for naming prefixes
Justin Burkett [Wed, 13 Dec 2017 15:56:25 +0000 (10:56 -0500)]
Add which-key-enable-extended-define-key customization option
Adds supporting which-key--process-define-key-args.
The docstring for the option is
Advise `define-key' to make which-key aware of definitions of the form
(define-key KEYMAP KEY '("DESCRIPTION" . DEF))
With the advice, this definition will have the side effect of creating a
replacement in `which-key-replacement-alist' that replaces DEF with DESCRIPTION
when the key sequence ends in KEY. Using a cons cell like this is a valid
definition for `define-key'. All this does is to make which-key aware of it.
Since many higher level keybinding functions use `define-key' internally, this
will affect most if not all of those as well.
This variable must be set before loading which-key.
Justin Burkett [Thu, 7 Dec 2017 22:30:49 +0000 (17:30 -0500)]
Fix ordering of default replacement-alist
When which-key-allow-multiple-replacements is nil, this order is required to get
the intended behavior with left and right.
Ref #181
Justin Burkett [Tue, 5 Dec 2017 12:17:47 +0000 (07:17 -0500)]
Add notes about paging commands not working with minibuffer
Justin Burkett [Tue, 14 Nov 2017 15:10:43 +0000 (10:10 -0500)]
Re-indent README
Justin Burkett [Tue, 14 Nov 2017 15:04:31 +0000 (10:04 -0500)]
Mention which-key-show-major-mode in README
Justin Burkett [Tue, 14 Nov 2017 15:00:14 +0000 (10:00 -0500)]
Consolidate use of binding filters
Justin Burkett [Tue, 14 Nov 2017 14:52:37 +0000 (09:52 -0500)]
Improve echo area note for which-key-show-major-mode
Justin Burkett [Mon, 13 Nov 2017 20:17:16 +0000 (15:17 -0500)]
Add which-key-show-major-mode
This is a new function to discover bindings, including evil ones, in the keymap
of the current major mode. It should be considered experimental at the moment.
Justin Burkett [Thu, 17 Aug 2017 18:07:50 +0000 (14:07 -0400)]
Update which-key version for GNU ELPA
Justin Burkett [Wed, 9 Aug 2017 00:05:37 +0000 (20:05 -0400)]
Make minor changes to commentary in which-key.el
Justin Burkett [Mon, 7 Aug 2017 20:27:12 +0000 (16:27 -0400)]
Assign copyright to FSF for ELPA
Justin Burkett [Tue, 30 May 2017 12:25:52 +0000 (08:25 -0400)]
Fix which-key-show-remaining-keys option
Justin Burkett [Sun, 28 May 2017 14:06:07 +0000 (10:06 -0400)]
Version 3.0.1
Justin Burkett [Sat, 27 May 2017 19:34:54 +0000 (15:34 -0400)]
Handle C-h when buffer not showing
which-key-C-h-dispatch was not doing anything different if the which-key buffer
was not showing. This makes it fall back to the standard Emacs behavior.
Fixes #172
Justin Burkett [Sun, 21 May 2017 12:49:54 +0000 (08:49 -0400)]
Merge pull request #171 from wyuenho/patch-1
Customize which-key-sort-order with list
Jimmy Yuen Ho Wong [Sat, 20 May 2017 22:46:12 +0000 (23:46 +0100)]
Customize which-key-sort-order with list
This will display a list the user can choose from in customize instead of having them to type
Justin Burkett [Fri, 19 May 2017 21:55:13 +0000 (17:55 -0400)]
Adhere to 80 chars per column
Justin Burkett [Fri, 19 May 2017 21:53:43 +0000 (17:53 -0400)]
Use regexp-opt for regexps
* which-key.el (which-key--get-keymap-bindings): Update
Justin Burkett [Fri, 19 May 2017 21:37:08 +0000 (17:37 -0400)]
Fixup previous commit
* which-key.el (which-key--compute-binding): Need to copy name of remapped
command
Fixes #170
Justin Burkett [Fri, 19 May 2017 19:48:56 +0000 (15:48 -0400)]
Add which-key-compute-remaps option
* which-key.el (which-key--compute-binding): Add
(which-key--get-current-bindings): Modify to use prev function
(which-key-compute-remaps): Add option
Fixes #169
Justin Burkett [Tue, 16 May 2017 12:37:06 +0000 (08:37 -0400)]
Version 3.0
Justin Burkett [Tue, 16 May 2017 12:34:44 +0000 (08:34 -0400)]
Prepare for ELPA release
Update min emacs version to 24.4 to remove backported functions. Remove outdated
comments.
Justin Burkett [Tue, 16 May 2017 12:34:01 +0000 (08:34 -0400)]
Add .cask to gitignore
Justin Burkett [Tue, 16 May 2017 11:35:36 +0000 (07:35 -0400)]
Update emacs versions for Travis
Justin Burkett [Mon, 1 May 2017 12:44:32 +0000 (08:44 -0400)]
Make -init-buffer-hook a custom var
Justin Burkett [Thu, 27 Apr 2017 00:57:49 +0000 (20:57 -0400)]
Add option to show transient maps
Set which-key-show-transient-maps to a non-nil value to use this feature.
When a transient map is active and it is not a hydra, show the keys from the
map.
Fixes #164
Justin Burkett [Tue, 18 Apr 2017 12:01:40 +0000 (08:01 -0400)]
Improve which-key--any-match-p
Justin Burkett [Fri, 7 Apr 2017 13:05:10 +0000 (09:05 -0400)]
Fix customize type for replacement-alist
Ref #165
Justin Burkett [Wed, 15 Mar 2017 17:55:01 +0000 (13:55 -0400)]
Fix replacement of keys when prefix is nil
The prefix is nil at the top-level keymap
Fixes #163
Justin Burkett [Thu, 9 Feb 2017 15:27:41 +0000 (10:27 -0500)]
Fix handling of key ranges ("a .. d")
When the last key in the key sequence is a range, extract the whole range
instead of just the final key.
Fixes #161
Justin Burkett [Tue, 7 Feb 2017 15:55:14 +0000 (10:55 -0500)]
Version 2.0
Increased major version for replacement list changes
Justin Burkett [Thu, 22 Dec 2016 20:21:37 +0000 (15:21 -0500)]
Add which-key-show-prefix 'mode-line option
See #157
Justin Burkett [Tue, 20 Dec 2016 21:03:21 +0000 (16:03 -0500)]
Update README
Justin Burkett [Tue, 20 Dec 2016 20:56:35 +0000 (15:56 -0500)]
Add which-key-max-display-columns
See #157
Justin Burkett [Thu, 15 Dec 2016 14:58:32 +0000 (09:58 -0500)]
Remove unused variable
Justin Burkett [Thu, 15 Dec 2016 14:42:08 +0000 (09:42 -0500)]
Fix #156 by allowing multiple replacements
Add which-key-allow-multiple-replacements which can be set to allow multiple
replacements from which-key-replacement-alist to apply to a key binding.
Switch from using assoc-default to find replacements to
which-key--get-replacements.
Adjusts tests and add a new one for multiple replacements.
Justin Burkett [Mon, 12 Dec 2016 14:04:44 +0000 (09:04 -0500)]
Tweak TOC in README and fix a link
Justin Burkett [Wed, 7 Dec 2016 15:14:08 +0000 (10:14 -0500)]
Add a missing type declaration
Justin Burkett [Mon, 5 Dec 2016 19:09:36 +0000 (14:09 -0500)]
Prevent display from occurring twice in a row
Found some cases where this could happen with a secondary idle delay.
Justin Burkett [Mon, 5 Dec 2016 18:55:25 +0000 (13:55 -0500)]
Add basic timing facility for debugging.
Justin Burkett [Thu, 1 Dec 2016 12:42:32 +0000 (07:42 -0500)]
Remove old obsolete variables/functions
Justin Burkett [Thu, 1 Dec 2016 12:39:19 +0000 (07:39 -0500)]
Add some docstrings
Justin Burkett [Thu, 1 Dec 2016 12:39:03 +0000 (07:39 -0500)]
Remove some unused functions
Justin Burkett [Thu, 1 Dec 2016 00:09:20 +0000 (19:09 -0500)]
Fixup last commit part 2
Justin Burkett [Thu, 1 Dec 2016 00:03:56 +0000 (19:03 -0500)]
Fixup last commit
Justin Burkett [Wed, 30 Nov 2016 23:52:52 +0000 (18:52 -0500)]
Support functions in -add-key-based-replacements
Justin Burkett [Wed, 30 Nov 2016 13:58:53 +0000 (08:58 -0500)]
Fix links to users in README
Justin Burkett [Wed, 30 Nov 2016 13:56:05 +0000 (08:56 -0500)]
Add @pdcawley's example to README
Justin Burkett [Wed, 30 Nov 2016 13:39:52 +0000 (08:39 -0500)]
Add test for #155
Justin Burkett [Wed, 30 Nov 2016 12:03:52 +0000 (07:03 -0500)]
Fix bug in last commit
The regexp-quote docstring is misleading since (regexp-quote "SPC x") will match
"SPC x c". Added back the beginning and end markers in the regexp.
Justin Burkett [Wed, 30 Nov 2016 02:29:32 +0000 (21:29 -0500)]
Quote regexp in -add-key-based-replacements
Should fix #154
Justin Burkett [Tue, 29 Nov 2016 18:20:00 +0000 (13:20 -0500)]
Fix a README link
Justin Burkett [Tue, 29 Nov 2016 13:38:21 +0000 (08:38 -0500)]
Normalize key sequences from -add-key-based-replacements
Justin Burkett [Mon, 28 Nov 2016 15:10:18 +0000 (10:10 -0500)]
Simplify --format-and-replace
Justin Burkett [Fri, 25 Nov 2016 14:00:25 +0000 (09:00 -0500)]
Fix use of function in -replacement-alist
Wasn't actually deleting nil results
Justin Burkett [Fri, 25 Nov 2016 12:56:06 +0000 (07:56 -0500)]
Don't use case-fold-search in --maybe-replace
See https://github.com/syl20bnr/spacemacs/issues/7837#issuecomment-
262938480
Justin Burkett [Tue, 22 Nov 2016 12:01:09 +0000 (07:01 -0500)]
Update test
Justin Burkett [Tue, 22 Nov 2016 04:03:12 +0000 (23:03 -0500)]
Consolidate replacements into one alist
New list is which-key-replacement-alist. See docstring.
The following lists are deprecated. Some basic backwards compatibility is
attempted, but more complicated configs will likely break.
which-key-key-replacement-alist
which-key-key-based-description-replacement-alist
which-key-description-replacement-alist
which-key-binding-filter-function was removed, since it's functionality is
mostly replaced by which-key-replacement-alist
Updated README
Justin Burkett [Sun, 6 Nov 2016 17:50:55 +0000 (12:50 -0500)]
Move sort after filter op in --get-formatted-key-bindings
Justin Burkett [Mon, 31 Oct 2016 17:56:57 +0000 (13:56 -0400)]
Update comment in --show-buffer-side-window for prior change
Justin Burkett [Mon, 31 Oct 2016 17:48:14 +0000 (13:48 -0400)]
Remove use of display-buffer-in-major-side-window
According to emacs bug #24828, this is an internal function and should
not be used. Following the advice from that report, switch to
display-buffer-in-side-window and add an option for the user to specify
the slot value for that function.
Fixes #146
Justin Burkett [Sat, 29 Oct 2016 13:15:03 +0000 (09:15 -0400)]
Add which-key-binding-filter-function
Can be used to arbitrarily manipulate key bindings, including deleting
them, before they are processed by which-key. See docstring for usage.
Fixes #152
https://github.com/syl20bnr/spacemacs/issues/7582
Justin Burkett [Sat, 29 Oct 2016 12:34:42 +0000 (08:34 -0400)]
Add sort option -prefix-then-key-order-reverse
Fixes #145
Justin Burkett [Sat, 29 Oct 2016 12:33:55 +0000 (08:33 -0400)]
Add global option for how to sort case
which-key-sort-uppercase-first (default t)
See #145
Justin Burkett [Tue, 18 Oct 2016 01:35:49 +0000 (21:35 -0400)]
Merge pull request #149 from rdotdk/patch-1
fix link
Hariharan R [Sun, 16 Oct 2016 06:18:23 +0000 (02:18 -0400)]
fix link
Justin Burkett [Wed, 5 Oct 2016 20:32:29 +0000 (16:32 -0400)]
Fix test for recent prefix-name change
Justin Burkett [Wed, 5 Oct 2016 18:54:49 +0000 (14:54 -0400)]
Make
458c8d9 backwards compatible
The prefix titles need to be in cons cells to stay consistent with how
they were used before.
Justin Burkett [Wed, 5 Oct 2016 18:42:10 +0000 (14:42 -0400)]
Move a function for the compiler
Justin Burkett [Wed, 5 Oct 2016 18:24:11 +0000 (14:24 -0400)]
Consolidate prefix names and key-based replacements
Make obsolete several redundant functions, the most important of which
is which-key-declare-prefixes. This is just an alias for
which-key-add-key-based-replacements now. The additional functionality
that declare-prefixes had (for declaring prefix titles) is now rolled
into the add-key-based-replacements function. See that functions doc
string.
Justin Burkett [Tue, 4 Oct 2016 20:48:40 +0000 (16:48 -0400)]
Fix -maybe-get-prefix-title use of key-binding
key-binding doesn't work with all forms of key strings.
See #143
justbur [Sun, 11 Sep 2016 19:58:53 +0000 (15:58 -0400)]
Resize popup when frame resized
Fixes #139
Justin Burkett [Wed, 31 Aug 2016 23:55:26 +0000 (19:55 -0400)]
Merge pull request #137 from tarsius/outlines
Follow conventions for section headers
Justin Burkett [Wed, 31 Aug 2016 23:55:03 +0000 (19:55 -0400)]
Merge pull request #136 from tarsius/fixup
Move definition of which-key--local-binding-p
Jonas Bernoulli [Wed, 31 Aug 2016 23:26:10 +0000 (01:26 +0200)]
Follow conventions for section headers
Doing so allows the use of `outline-minor-mode' makes it possible
to navigate sections similarly to how that is done in `org-mode'.
Jonas Bernoulli [Wed, 31 Aug 2016 12:41:41 +0000 (14:41 +0200)]
Move definition of which-key--local-binding-p
It has to be defined after the inline functions which it uses.
Justin Burkett [Wed, 17 Aug 2016 15:17:45 +0000 (11:17 -0400)]
Version 1.1.15